package dominio;
import java.util.*;

public class MetodosGenerales {

    //Método que genera número aleatorio
    public static int numeroAleatorio(int min, int max) {
        Random rnd = new Random();
        int numero = rnd.nextInt() * max + min;

        return numero;
    }
    
    
    //Método que muestra una lista
    public static void mostrarLista(ArrayList listaObjetos){
        for(int i=0; i<listaObjetos.size(); i++){
            Object objeto = listaObjetos.get(i);
            System.out.println((i+1) + "-" + objeto);
        }
    }
    
    
    
   //Método que devuelve un jugador de una lista
    public static Jugador jugadorSeleccionado(ArrayList<Jugador> listaJugadores){
        MetodosGenerales.mostrarLista(listaJugadores);
        int jugadorSeleccionado = MetodosGenerales.pedirEntero("", 1, listaJugadores.size());
        Jugador jugador = listaJugadores.get(jugadorSeleccionado - 1);
        return jugador;
    }
    
    
    
    //Método para pedirle datos String al usuario.
    public static String pedirTexto() {
        Scanner in = new Scanner(System.in);
        String texto = in.nextLine();
        return texto;
    }

    
    
    //Validador de datos numéricos
    public static int pedirEntero(String mensaje, int inferior, int superior) {
        Scanner in = new Scanner(System.in);
        boolean ok = false;
        int dato = 0;
        while (!ok) {
            try {
                System.out.println(mensaje);
                dato = in.nextInt();
                if (dato < inferior || dato > superior) {
                    System.out.println("Debe ingresar un número entre " + inferior + " y " + superior);
                } else {
                    ok = true;
                }
            } catch (InputMismatchException e) {
                System.out.println("Por favor ingrese sólo números.\n");
                in.next();
            }
        }
        return dato;
    }
}
